package ysf.com.difficulty;

import ysf.com.listnode.ListNode;

/**
 * 合并两个有序链表
 * @author ysf
 * @date 2021/7/12 22:52
 */
public class TwentyFirstDemo {

    public static void main(String[] args) {

        ListNode listNode1 = new ListNode(1);
        listNode1.add(2);
        listNode1.add(4);
        ListNode listNode2 = new ListNode(1);
        listNode2.add(3);
        listNode2.add(4);
        ListNode listNode = mergeTwoListNode(listNode1, listNode2);
        listNode.print();
    }


    public static ListNode mergeTwoListNode(ListNode l1,ListNode l2){
        ListNode h = new ListNode(0);
        ListNode ans = h;
        while (l1 != null && l2 != null){
            if (l1.val < l2.val){
                h.next = l1;
                h = h.next;
                l1 = l1.next;
            }else {
                h.next = l2;
                h = h.next;
                l2 = l2.next;
            }
        }
        if(l1 == null){
            h.next = l2;
        }
        if (l2 == null){
            h.next = l1;
        }
        return ans.next;
    }


}
